package _0_语法._4_循环._1_单循环;

import java.util.Scanner;

public class _5_是否为完数 {

    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);
        int num;
        int sum = 0;    // 求和
        System.out.println("请输入一个正整数：");
        num = scanner.nextInt();
        // 从1开始遍历但不包含本身(真约数)
        for (int i = 1; i < num; i++) {
            // 如果能够整除（即，约数），则累加
            if(num % i == 0) {
                sum = sum + i;
            }
        }
        // 如果一个数等于它的真因子（约数、因数）之和，则输出
        if(sum == num) {
            System.out.println(num + "是完数");
        }
        else {
            System.out.println(num + "不是完数");
        }
    }
}
